-- @Author: 作者QQ381990860
-- @Date:   2021-11-05 10:34:34
-- @Last Modified by:   作者QQ381990860
-- @Last Modified time: 2022-07-23 06:59:07

local 帮派申请列表类 = class(窗口逻辑)
local tp,zts,zts1
local insert = table.insert
function 帮派申请列表类:初始化(根)
	self.ID = 141
	self.x = 150+(全局游戏宽度-800)/2
	self.y = 100
	self.xx = 0
	self.yy = 0
	self.注释 = "帮派申请类"
	self.可视 = false
	self.鼠标 = false
	self.焦点 = false
	self.可移动 = true
	local 资源 = 根.资源
	local 按钮 = 根._按钮
	local 自适应 = 根._自适应
	self.资源组 = {
	[1] = 自适应.创建(0,1,515,291,3,9),--背景
	[2] = 按钮.创建(自适应.创建(18,4,16,16,4,3),0,0,4,true,true),
	[3] = 按钮.创建(自适应.创建(11,4,55,20,1,3),0,0,4,true,true,"取消"),
	[4] = 按钮.创建(自适应.创建(32,4,10,13,4,3),0,0,4,true,true),
	[5] = 按钮.创建(自适应.创建(31,4,10,13,4,3),0,0,4,true,true),
	[6] = 按钮.创建(自适应.创建(11,4,75,20,1,3),0,0,4,true,true,"允许加入"),
	[7] = 按钮.创建(自适应.创建(11,4,75,20,1,3),0,0,4,true,true,"拒绝申请"),
	[8] = 按钮.创建(自适应.创建(11,4,75,20,1,3),0,0,4,true,true,"清空列表"),
	[10] = 自适应.创建(8,1,490,205,3,9),

	}

	for n=2,8 do
		self.资源组[n]:绑定窗口_(141)
	end
	for n=6,8 do
		self.资源组[n]:置偏移(0,-1)
	end

	self.窗口时间 = 0
	tp = 根
	zts = tp.字体表.普通字体
	zts1 = tp.字体表.描边字体

end

function 帮派申请列表类:打开(数据)
	if  self.可视 then
		self.可视 = false
		self.显示数据 = {}
		self.显示序列 = 1
		self.选中编号 = 0
	else
	if  self.x > 全局游戏宽度 then
		self.x = 0+(全局游戏宽度-800)/2
    end
		insert(tp.窗口_,self)
	self.显示数据 = {}
	self.显示数据 = 数据
	self.可视 = true
	self.显示序列 = 1
	self.选中编号 = 0
	self.成员显示 = {}
	for n = 1, #self.显示数据, 1 do
		if n <= 20 then
			self.显示位置 = n
		else
			self.显示位置 = n - math.floor(n / 10) * 10
		end
		self.显示数据[n].包围盒 = require("gge包围盒")(15, 73, 470, 18)
	end

	table.sort(self.显示数据, function (a, b)
		return b.日期 < a.日期
	end)

		tp.运行时间 = tp.运行时间 + 3
		self.窗口时间 = tp.运行时间
		self.可视 = true
	end
end

function 帮派申请列表类:显示(dt,x, y)
	self.焦点=false
	self.资源组[2]:更新(x,y)
	self.资源组[5]:更新(x,y)
	self.资源组[4]:更新(x,y)
	self.资源组[6]:更新(x,y)
	self.资源组[7]:更新(x,y)
	self.资源组[8]:更新(x,y)
	self.资源组[3]:更新(x,y)

	if self.资源组[5]:事件判断() then
		if self.显示序列 <= 1 then
		else
			self.显示序列 = self.显示序列 - 1
		end
	elseif self.资源组[4]:事件判断() then
		if self.显示序列 * 10 > #self.显示数据 then
		else
			self.显示序列 = self.显示序列 + 1
		end
	elseif self.资源组[8]:事件判断() then
		客户端:发送数据(1, 66, 13, "66")
	elseif self.资源组[7]:事件判断() then
		if self.选中编号 == 0 then
			tp.提示:写入("#y/请先选中一个玩家")
        else
			客户端:发送数据(self.显示数据[self.选中编号].id, 67, 13, "16")
		end

	elseif self.资源组[6]:事件判断() then
		if self.选中编号 == 0 then
			tp.提示:写入("#y/请先选中一个玩家")
		else
			客户端:发送数据(self.显示数据[self.选中编号].id, 68, 13, "16")
		end


	elseif self.资源组[3]:事件判断() then
		self:打开()
	end

	self.资源组[1]:显示(self.x,self.y)
  self.资源组[2]:显示(self.x+self.资源组[1].宽度-20,self.y+3)
  tp.窗口标题背景_:显示(self.x+self.资源组[1].宽度/2-73,self.y)
  zts1:显示(self.x+self.资源组[1].宽度/2-44,self.y+1,"申请人员名单")



	self.资源组[10]:显示(self.x+14, self.y+50)
	zts:置颜色(0xFFFFFFFF)
	zts:显示(self.x+90,self.y+55,"日期              名称        ID       等级     门派")
	self.资源组[5]:显示(self.x+493, self.y+73)
	self.资源组[4]:显示(self.x+493, self.y+241)
	self.资源组[6]:显示(self.x+85, self.y+260,true)
	self.资源组[7]:显示(self.x+185, self.y+260,true)
	self.资源组[8]:显示(self.x+285, self.y+260,true)
	self.资源组[3]:显示(self.x+385, self.y+260,true)

	for n = 1, 20, 1 do
		self.显示编号 = (self.显示序列 - 1) * 10 + n
		if self.显示数据[self.显示编号] ~= nil then
			if self.选中编号 == self.显示编号 then
				zts:置颜色(0xFF00FF00)
			else
				zts:置颜色(0xFF0000FF)
			end
			zts:显示(self.x+15, self.y+73 + n * 21 - 21, self.显示数据[self.显示编号].日期文本 .. "]")
			zts:显示(self.x+210, self.y+73 + n * 21 - 21, self.显示数据[self.显示编号].名称)
			zts:显示(self.x+290, self.y+73 + n * 21 - 21, self.显示数据[self.显示编号].id)
			zts:显示(self.x+360, self.y+73 + n * 21 - 21, self.显示数据[self.显示编号].等级 .. "级")
			zts:显示(self.x+420, self.y+73 + n * 21 - 21, self.显示数据[self.显示编号].门派)


		self.显示数据[n].包围盒:置坐标(self.x+20,self.y+73 + n * 21 - 21)
			if self.显示数据[self.显示编号].包围盒:检查点(x, y) and 引擎.鼠标弹起(0) then
				if self.选中编号 == self.显示编号 then
					self.选中编号 = 0
				else
					self.选中编号 = self.显示编号
				end
			end
		end
	end
end

return 帮派申请列表类
